package RRHH_Modelo;

import Conexion.Conexion;
import java.sql.SQLException;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;

public class RHH_DEPARTAMENTO {

    private double ID;
    private String DESCRIPCION;
    private Conexion con = null;

    public RHH_DEPARTAMENTO(Conexion con) {
        this.con = con;
    }

    public RHH_DEPARTAMENTO(double ID, String DESCRIPCION) {
        this.ID = ID;
        this.DESCRIPCION = DESCRIPCION;
    }

    public boolean Insertar() throws SQLException {
        String consulta = "insert into BROKER.RHH_DEPARTAMENTO(ID,DESCRIPCION) VALUES (" + ID + ",'" + DESCRIPCION + "')";
        con.EjecutarSentencia(consulta);
        return true;
    }

    public boolean EliminarXid() throws SQLException {
        String consulta = "delete from BROKER.RHH_DEPARTAMENTO where ID = " + getID();
        con.EjecutarSentencia(consulta);
        return true;
    }

    public RHH_DEPARTAMENTO BuscarXid(double id) throws SQLException {
        String consulta = "select * from BROKER.RHH_DEPARTAMENTO where ID = " + id;
        ResultSet rs = con.EjecutarConsulta(consulta);
        List<RHH_DEPARTAMENTO> lista = Cargar(rs);
        if (lista.size() > 0)
            return lista.get(0);
        else
            return null;
    }

    public List<RHH_DEPARTAMENTO> Todos() throws SQLException {
        String consulta = "select * from BROKER.RHH_DEPARTAMENTO";
        ResultSet rs = con.EjecutarConsulta(consulta);
        return Cargar(rs);
    }

    public List<RHH_DEPARTAMENTO> Cargar(ResultSet rs) throws SQLException {
        List<RHH_DEPARTAMENTO> lista = new ArrayList<RHH_DEPARTAMENTO>();
        while (rs.next()) {
            RHH_DEPARTAMENTO objeto = new RHH_DEPARTAMENTO(con);
            objeto.setID(rs.getDouble("ID"));
            objeto.setDESCRIPCION(rs.getString("DESCRIPCION"));
            objeto.setCon(con);
            lista.add(objeto);
        }
        return lista;
    }

    public double getID() {
        return ID;
    }

    public void setID(double ID) {
        this.ID = ID;
    }

    public String getDESCRIPCION() {
        return DESCRIPCION;
    }

    public void setDESCRIPCION(String DESCRIPCION) {
        this.DESCRIPCION = DESCRIPCION;
    }

    public Conexion getCon() {
        return con;
    }

    public void setCon(Conexion con) {
        this.con = con;
    }
}
